package com.ssyt.yt1.day26.thread;

/**
 * 线程演示
 *
 * @author Hsu.
 * @since 2015年12月30日
 */
public class ThreadDemo {

	/**
	 * 没有开启子线程
	 * 
	 * @throws InterruptedException
	 */
	public static void test1() throws InterruptedException {
		System.out.println("1");

		int sum = 0;
		for (int i = 1; i <= 100; i++) {
			sum += i;
			Thread.sleep(100);
		}
		System.out.println(sum);

		System.out.println("2");
	}

	/**
	 * 在主线程里开启子线程
	 * 
	 * @throws InterruptedException
	 */
	public static void test2() throws InterruptedException {
		System.out.println("1");

		// 利用匿名内部类开启了一个子线程
		// new Thread() {
		//
		// @Override
		// public void run() {
		// int sum = 0;
		// for (int i = 1; i <= 100; i++) {
		// sum += i;
		// try {
		// Thread.sleep(100);
		// } catch (InterruptedException e) {
		// e.printStackTrace();
		// }
		// }
		// System.out.println(sum);
		// }
		//
		// }.start();

		new MyThread().start();

		System.out.println("2");
	}

	public static void main(String[] args) throws InterruptedException {
		// test1();
		test2();
	}
}

/**
 * 准备的一个子线程
 *
 * @author Hsu.
 * @since 2015年12月30日
 */
class MyThread extends Thread {

	@Override
	public void run() {
		int sum = 0;
		for (int i = 1; i <= 100; i++) {
			sum += i;
			try {
				Thread.sleep(100);
			} catch (InterruptedException e) {
				e.printStackTrace();
			}
		}
		System.out.println(sum);
	}
}
